﻿using System;
using System.Collections.Generic;
using System.Text;

namespace B4ALL.Cache.Singleton
{
    [Serializable]
    public class CacheSingletonIdentifier : Attribute
    {
        private String abstractName;

        public String AbstractName
        {
            get { return abstractName; }
            set { abstractName = value; }
        }

        private String nameInMethod;

        public String NameInMethod
        {
            get { return nameInMethod; }
            set { nameInMethod = value; }
        }

        private String propertyNameInMethod = null;

        public String PropertyNameInMethod
        {
            get { return propertyNameInMethod; }
            set { propertyNameInMethod = value; }
        }

        private CacheSingletonIdentifierType type = CacheSingletonIdentifierType.PrimaryKey;

        public CacheSingletonIdentifierType Type
        {
            get { return type; }
            set { type = value; }
        }
    }

    public enum CacheSingletonIdentifierType
    {
        PrimaryKey,
        Other
    }
}
